package com.vshining.cryptoki.jna.pkcs11t;

import com.sun.jna.NativeLong;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;

import java.util.Arrays;
import java.util.List;

/**
 * @author Shining Wang <shiningwang@vshining.com>
 */
@SuppressWarnings("unused")
public class CK_SKIPJACK_PRIVATE_WRAP_PARAMS extends Structure {
    NativeLong ulPasswordLen;
    Pointer pPassword;
    NativeLong ulPublicDataLen;
    Pointer pPublicData;
    NativeLong ulPAndGLen;
    NativeLong ulQLen;
    NativeLong ulRandomLen;
    Pointer pRandomA;
    Pointer pPrimeP;
    Pointer pBaseG;
    Pointer pSubprimeQ;

    @Override
    protected List getFieldOrder() {
        return Arrays.asList(
                "ulPasswordLen",
                "pPassword",
                "ulPublicDataLen",
                "pPublicData",
                "ulPAndGLen",
                "ulQLen",
                "ulRandomLen",
                "pRandomA",
                "pPrimeP",
                "pBaseG",
                "pSubprimeQ"
        );
    }
}
